import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.Vector;


public class ListaVenta implements IDatos {
	List <Venta> LVenta = new Vector <Venta>();

public  void leerDatos(){
    String c;
    Venta vent;
     
    StringBuffer seccion = new StringBuffer();
    try {
       	BufferedReader br = new BufferedReader(new FileReader("Granero.txt"));
         while ((c = br.readLine()) != null){
             c=c.trim();
             
             vent = new Venta(); 
            
            StringBuffer pc1=new StringBuffer();
            StringBuffer pc2=new StringBuffer();
            StringBuffer pc3=new StringBuffer();
          
    
           if (c.length()!=0){//if1
           if (c.charAt(0)!='.'){//if2
        	   if (c.charAt(0)=='#') {
        		   seccion = new StringBuffer(c);
        		  //System.out.print(seccion);
        		   
        	   }
                    
            if (seccion.toString().compareTo("#Ventas") == 0){
        	   if(c.compareTo("#Ventas")==0)
            		continue;
  
            	Utils.tokennizar_cadena(c,pc1,pc2,pc3);
                
              //  System.out.println(pc1);
              //  System.out.println(pc2);
              //  System.out.println(pc3);
              //  System.out.println(pc4);
              //  System.out.println(pc5);
            	vent.setVenta(pc1.toString(),pc2.toString(),pc3.toString());
                                //this.LArticulo.add(art);
                anadirVenta(vent);
                
            }
            
     } //del if2       
     }//del if1
  } //del while
         br.close();
    }//del try
         catch(IOException e){}
    }//de leerDatos()

void anadirVenta(Venta unaVenta)
{
 LVenta.add (unaVenta);
}

public void escribirDatos(){
	
}


boolean existeVenta(String idcod){
    Iterator<Venta> iterVenta = LVenta.iterator();
        for (iterVenta = LVenta.iterator(); iterVenta.hasNext(); )        
          { 
        	Venta aux_Venta= (Venta)iterVenta.next(); 
           if (aux_Venta.getCod().compareTo(idcod)==0)
               return true;
      }
    return false;
 
}

Venta recuperarVenta(String idcod){
    Iterator<Venta> iterVenta = LVenta.iterator();
        for (iterVenta = LVenta.iterator(); iterVenta.hasNext(); )        
          { 
        	Venta aux_Venta= (Venta)iterVenta.next(); 
           if (aux_Venta.getCod().compareTo(idcod)==0)
               return aux_Venta;
      }
    return null;
}


void borrarVenta(String idcod)
{
	Iterator<Venta> iterVenta = LVenta.iterator();
    for (iterVenta = LVenta.iterator(); iterVenta.hasNext(); )        
      { 
    	Venta aux_Venta= (Venta)iterVenta.next(); 
       if (aux_Venta.getCod().compareTo(idcod)==0){
    	   System.out.println("La Venta n. " + aux_Venta.getCod() + " ha sido borrada de la lista" );
    	   LVenta.remove(aux_Venta);
    	   break;
   } // if
 } // for
}

void listarVenta(Venta a){
	System.out.println("Codigo: " + a.getCod());
	System.out.println("Nombre: " + a.getCodArticulo());
	System.out.println("Categoria: " + a.getCantidad());
	
}

void listarTodasVentas(){
	
	Iterator<Venta> iterVenta = LVenta.iterator();
    for (iterVenta = LVenta.iterator(); iterVenta.hasNext(); )        
      { 
    	Venta a= (Venta)iterVenta.next(); 
	//System.out.println("Codigo: " + a.getCod());
	//System.out.println("Cod Articulo: " + a.getCodArticulo());
	//System.out.println("Cantidad: " + a.getCantidad());
    	a.imprimirVenta();
	
      }
}



//Nuevo
/*
void ordenarVentas(){
	
}
*/

@SuppressWarnings("unchecked")
public  <T> void ordenarVentas(){//ordena ventas por el codigo, ver la clase venta
								 //metodo compareTo
	Collections.sort(this.LVenta);
}


}//de la clase ListaVenta